﻿using XinLife.Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Principal;
using System.Text;
using System.Threading.Tasks;
using XinLife.Core.Model;
using Microsoft.AspNetCore.Mvc;

namespace XinLife.Application.Interface
{
    public interface IUserService
    {
        Task<User> GetUserRoleNameStr(string cUserName, string loginPWD);
        Task<Tuple<User, IPrincipal>> Authenticate(string userName, string password);
        Task<AjaxResult> SetPwd(string oldPassword, string password);
        Task<AjaxResult> QQLogin(string code);
        Task<PageData<UserOutputDto>> GetUserPageList(Pagination page, string queryJson);
        Task<AjaxResult> GetUserByUserId(string userId);
        Task<AjaxResult> EditUserAsync(UserInputDto inputUser);
        Task<AjaxResult> DelUserAsync(string ids);
        Task<AjaxResult> ResetPwd(string id);
        Task<AjaxResult> UpdateLoginTime(string userId);

        Task<AjaxResult> LoginInfo();
    }
}
